1. Technical Field
This invention relates to a device and process for establishing the basis for an electronic or other machine-based transaction between two or more processing devices in an open distributed system each acting on behalf of a party to the transaction, and in particular a distributed protocol for establishing the basis of an agreement between users of such devices, to co-operate to provide a service or engage in an electronic transaction.
2. Description of Related Art
Any transaction requires an element of trust between the participants. The notion of trust can be formalised along the following lines. Suppose we have a situation in which one party (B) has offered some commitment to another party (A), possibly in return for some reciprocal commitment. Party A cannot be certain that B will complete its commitment. If party A accepts the offer from B, it will subsequently act on the assumption that B will complete its commitment—for example by providing a service to B in the expectation that B will pay for it or, conversely, by paying B in advance for a service B is expected to provide. Should B fail to do so, then A may suffer some loss.
As a rational agent, A will only accept B's offer if it perceives the risks to be outweighed by the probable benefits, where ‘risk’ takes into account the probability of B failing to deliver and the cost to A of this eventuality. If A accepts, then it can be said to “trust” B in the context of this transaction. The degree of perceived risk involved is a measure of the amount of trust A is placing in B.
‘Real life’ business-business transactions typically take place between companies with long-standing trading relationships involving trust and mutual-dependence. In ebusiness over the Internet, it is much more difficult to be sure of the identity and trustworthiness of a potential partner in a transaction. One widely used approach to overcome lack of trust is the ‘trusted third party’ (TTP). A TTP is a mutually-trusted and impartial intermediary.
When conducting transactions electronically, for example over an open distributed system such as the “Internet”, there are a number of particular problems that arise in establishing trust. In particular it is quite possible that the parties will have had little or no prior contact or knowledge of reputation or brand. For example, one party may have found the other using found B via an on-line directory of some sort. It is also relatively difficult to confirm the identity of the other party. For example one of the parties may be disguising itself as a more reputable party.
This situation is made worse when one considers multi-party transactions, which are becoming increasingly common. For example, the service to be provided may be a composite one, provided by integrating simpler services, each of which may be provided by different principals. For example a skiing holiday package may require airline tickets, transfers to and from the airport, currency exchange, accommodation, and facilities at the destination such as equipment and instruction. It is quite possible that the failure of any one provider to deliver on its commitments might destroy any value of the remainder of the service to the end user. However, the other service providers may have expended resources delivering their service components before the antisocial behaviour is discovered. The question of liability can thus be quite complex. The trustworthiness of this consortium or Virtual Organisation will depend not only on that of the individual providers, but also on their ability to work together effectively.
A ‘contract net’ approach in which the virtual organisation is formed as a collection of coupled binary ‘customer-provider’ relationships can simplify liability, but it raises other questions. Suppose a travel agent is acting as a broker or prime contractor for a service that combines contributions from a number of other service providers. If the customer's dealings are exclusively with the travel agent, he may not even be aware that the other providers are being used. Furthermore, the travel agent may be putting the consortium together ‘on-the-fly’, selecting which service providers to use on a case-by-case basis. The customer's experience from past dealings with the agent may then be of limited predictive value.
FIG. 1 shows a scenario involving a traveler with a laptop computer or personal digital assistant (PDA) 10 visiting a wireless local area network (WLAN) hot spot 11. At present, such hot spots are affiliated with particular providers, and the traveler would have to be a subscriber to the provider's service, or pay on the spot, to use the facilities. However, it is envisaged that in future a traveller's subscription may be with a Roaming Service Provider (RSP) 12. The RSP is a virtual operator, which does not own hotspots, but offers its subscribers access via any hotspot that the user wishes to use, with a suitable agreement being negotiated in real time with the operator 13 of the hotspot 11 if the RSP 12 does not already have an existing relationship with the hotspot operator 13. Having made a connection, the traveller 10 can then use the Internet 14 to access a multi-media cultural briefing (including high quality video), which is customised to his individual tastes and to the location of the hotspot 11. The video may be streamed to a high resolution screen in a booth in the hotspot.
This scenario involves delivery of a composite service on several levels. Firstly, the actual content may combine material from different sources. Tailoring the content requires information on the locale (e.g. from the hotspot operator 13) and on the end-user (which may be held on the user's equipment 10 or by the RSP 12). The communications channel delivering the service crosses multiple networks potentially owned by different operators some of which may be relatively small (e.g. the hotspot operator), and some may be ‘virtual’. This raises the prospect that agreements between operators may need to be reached in real time, not only at a service management level, but at a business level as well. Arrangements for accounting, billing and revenue distribution need to be worked out, and the associated tasks (including co-ordination) shared among the parties involved.
In such a situation, it is necessary for each party to be able to trust the others. If one party has direct experience of another, and considers it to be reliable, a trust bond may be said to exist between them. In a device acting as agent for one party, this trust bond may be embodied as a data entity relating to the other party. Negative trust bonds may exist, in which one party has experience that the other is not trustworthy. These can be recorded in the same way. However, in many cases the users will have no previous experience of each other, and no trust bond (positive or negative) will exist. Note that a trust bond is unidirectional. For example, an individual user may trust a large company, but the converse need not be true. However, no transaction will operate unless each party trusts the other.
One way to facilitate a trust relationship between parties is to introduce a trusted third party (TTP), as shown in FIG. 2. This is an entity 29 that is trusted by one or more of the parties 21,22 taking part in the transaction (hereinafter referred to as “principals”). The participation of the TTP 29 in a transaction enables any principals 21,22 with which it has a pre-existing trust bond to behave as if a trust bond exists between them. In this specification the term “trust service provider” (TSP), to denote a TTP providing an electronic service that effectively strengthens trust in this way.
A TSP may operate in a number of ways. It may provide an authentication service between principals who do not initially have any knowledge of each other. The principals may be unwilling to provide each other with the credentials that would support their identity claims, since this would expose them to risk that the other party might copy these credentials and use then fraudulently. Instead, one party supplies the credentials to the TSP, which checks the identity and confirms it to the other party. The accredited party must trust the TSP not to misuse or reveal the credentials, while the other party must trust it to be competent as regards authentication checks and also truthful.
Another possible function of a TSP is as an electronic “notary”, acting as a trusted witness to contracts or transactions. If disagreement arises (e.g. over whether or when an agreement was entered into), a document signed by the notary can be produced by one of the parties, providing authoritative evidence.
A TSP may also act as an intermediary in transactions (e.g. purchases) between parties who do not trust each other. The parties send the money and item to a TSP, and when both have been delivered to the TSP, it releases them both. Both parties A and B must trust the TSP not to run off with the money or item to be purchased, and to release them when and only when the requirements of the contract are satisfied.
It is possible for multiple TSPs to be involved in a transaction, perhaps because different TSPs are providing different services (e.g. identity provider and exchange intermediary), or because different TSPs are acting for different principals. In particular, it may not be possible to identify a single TSP that is acceptable to both parties. However, each party may able to identify a different TSP which it trusts, and which trust each other. The TSPs are then able to act in conjunction to provide a ‘chain of trust’ between principals. FIG. 3 shows such a situation, in which the principals 21, 22 each have an established trust relationship with a respective TSP 28, 29. In the figure, the TSP are labelled as ‘aggregated’ (ATSPs), indicating that they each combine multiple TSP roles. This aggregation could be achieved via a unitary multifunction TSP or by a consortium of more specialised TSPs.
It can be seen from FIG. 3 that TSPs can also provide trust services to other TSPs. For example, the first TSP 28 provides a trust service to the second TSP 29 in respect of the principal 21. More generally, if two TSP's have no trust record of each other, but each trusts a third TSP, that third TSP can then bridge the ‘trust gap’ enabling the other two to proceed confidently with the transaction.
Reliance on a previously-established “circle of trust”, or identification of some mutually-trusted impartial third party, is not always possible. The present invention is a technical implementation of a different approach, in which each principal to be represented by a different trusted party in the manner of solicitors representing the different parties in a legal action or house purchase. If we generalise this to complex, multi-party transactions or collaborative business processes, we find a potential requirement for multiple trust service providers playing different specialist roles and affiliated with different principals. Effectively, the TSPs act as a federated TTP. Principals have an established relationship with one or more TSPs, which means they depend on the TSP in question to safeguard their interests in the transaction—e.g. protecting privacy and making sure they are not defrauded. TSPs are expected to be able to recognise the status of other TSPs, for example through certification by a recognised ‘meta-TSP’, in the same way that solicitors recognise the status and trust the professional conduct of fellow solicitors. This concept of federations of TSPs is a generalisation of the federation concepts underlying federated identity management schemes such as defined by Project Liberty/the Liberty Alliance, which talks about circles of trust.
The present invention concerns a mechanism by means of which a group of devices attempting to engage in a potentially complex, multi-party transaction can reach and record agreement on a set of trust service providers whose participation in the transaction would give the principals sufficient confidence to proceed. Such a mechanism is particularly important when the ‘consortium’ of principals is assembled dynamically for a particular purpose, with little or no human intervention.
FIG. 4 shows a generalisation of the situation shown in FIG. 3 to multi-party transactions and multiple ATSPs. The lower half of the figure shows, schematically, a collection of principals 21, 22, 23, 24, 25 co-operating to enact a process in order to provide a service to some end user 20 (also a principal). The dotted arrows represent services provided by one principal to another as part of the transaction, with some form of payment expected in return. However, the principals may have no previous knowledge of each other: for example a holidaymaker 20, travel agent 21, airline 22, transfer operators 23, 24 and insurance company 25 may have had no previous dealings with each other. Let us suppose that a draft service agreement has been negotiated laying down the services to be provided and the payments due in return. In order to finalise the agreement, each principal must decide whether it has sufficient confidence in the behaviour of the other principals to outweigh the perceived risk. The upper half of the diagram shows a collection of ATSPs 26, 27, 28, 29 acting in a federated fashion to decrease the perceived risk and/or increase confidence. In effect, the ATSPs are additional participants in the transaction process. The additional operations do not alter the result of a successful transaction. In FIG. 4 arrows are shown associating ATSPs and principals, indicating that the ATSP represents the principal's interests. That is, the ATSPs offer assurances as that their clients' commitments will be fulfilled and ensure that arrangements are made to safeguard their rights. For example, ATSP 27 acts for principals 21 and 23. FIG. 4 also shows messages 31-39, 41-49 being transmitted between the agents 20-29. These will be described later.